Resistive memory elements often referred to as memristors are devices that may be programmed to different resistive states by applying electrical voltage or currents to the memristors. After programming the state of the memristors, the memristors may be read. The state of the memristors remains stable over a specified time period long enough to regard the device as nonvolatile. A number of memristors may be included within a cross-bar array in which a number of column lines intersect with a number of row lines at junctions, and the memristors are coupled to the column lines and row lines at the junctions.